package com.huang.practice;

import java.util.Random;
import java.util.Scanner;

/**
 * 目标：
 * 实现数组打乱
 */
public class Demo3 {
    public static void main(String[] args) {
        //定义动态数组存放数据
        int[] arr = new int[5];
        //遍历数组记录数据
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < arr.length; i++) {
            System.out.println("请输入第" + (i + 1) + "个数据");
            int num = sc.nextInt();
            arr[i] = num;
        }

        //遍历数组打乱数据
        Random r = new Random();
        for (int i = 0; i < arr.length; i++) {
            //定义随机索引 用来和当前元素交换值
            int index = r.nextInt(arr.length);
            //定义临时变量记录随机索引的值
            int temp = arr[index];
            //将当前元素的值赋值给随机索引处的元素
            arr[index] = arr[i];
            //将temp中记录的随机索引的元素的值赋值给当前元素
            arr[i] = temp;
        }

        //遍历数组即可
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}